I. Use DHVC Form with default actions: 

1. Login
Required fields:
- Text field: name="username"
- Password field: name="password"

Optional field:
- Checkbox field: name="rememberme"

2. Register
Required fields:
- Text field: name="user_login"
- Email field: name="user_email"
- Password field: name="user_password"
- Password field (confirm password): name="cuser_password"

3. Forgotten
Required fields:
- Text field: name="user_login"

4. Mailchimp, Mailpoet, Mymail
Required fields:
- Email field: name="email"

Optional field:
- Text field: name="first_name"
- Text field: name="last_name"

=============================

II. Use DHVC Form For Visual Composer Old Version < 4.0

Use DHVC Form for Visla Composer old version < 4.0 (example in Salient theme use 3.7.3).
Please go to file "js_composer/assets/js/backend/composer-view.js"  (in Salien theme go to file "salient/wpbakery/js_composer/assets/js/backend/composer-view.js") line #689 search code like:

getParams: function() {
var attributes_settings = this.mapped_params,
    params = jQuery.extend(true, {}, this.model.get('params'));
_.each(attributes_settings, function (param) {
    params[param.param_name] = vc.atts.parse.call(this, param);
}, this);
return params;
}

------
then replace code in "getParams" function:
------

 var attributes_settings = this.mapped_params,
    params = jQuery.extend(true, {}, this.model.get('params'));
_.each(attributes_settings, function (param) {
    params[param.param_name] = vc.atts.parse.call(this, param);
}, this);
return params;

 ------
 to:
 ------
 
var attributes_settings = this.mapped_params;
this.params = jQuery.extend(true, {}, this.model.get('params'));
_.each(attributes_settings, function (param) {
	this.params[param.param_name] = vc.atts.parse.call(this, param);
}, this);
_.each(vc.edit_form_callbacks, function(callback){
	callback.call(this);
}, this);
return this.params;	
	
  
